/////////////////////////////////////////////////////////////////////////
//
// Amuse Engine - application
// Copyright (c) 2013.  All Rights Reserved
//
// File:		AEOpenGLDevice.h
// Author:		Gianluca Belardelli
// Date:		17/10/2013
//
/////////////////////////////////////////////////////////////////////////
#ifndef _AEOPENGLDEVICE_H_
#define _AEOPENGLDEVICE_H_

class AEOpenGLDevice : public IAEVideoDevice
{
// Methods
public:
	AEOpenGLDevice( void );
	virtual AERESULT InitVideoDevice( AEVideoConfig *lpConfig );
	virtual bool SetMode( AEVideoConfig &vcMode );
	virtual bool IsInitialized( void ) const;
	virtual void UpdateScreen( void );
	virtual char *GetNameForEngine( void );

	virtual bool QuerySupportedResolution( AEVideoMode **lpVideoMode, AEUINT32 uiSize );
	virtual bool ChangeScreenResolution( AEINT32 nNewSizeX, AEINT32 nNewSizeY, AEUINT32 uiRefreshRate );

	virtual float GetDeviceDpi( void ) const;
};

#endif // _AEOPENGLDEVICE_H_
